﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using AgendaTelefonica.DataAcessObject;
using AgendaTelefonica.BusinessObject;
using System.Xml.Linq;

namespace AgendaTelefonica
{
    public partial class frmCadContato : Form
    {
        private Boolean isEdit = false;
        private ContatoDAO contatoDAO;
        private ContatoBO contatoBO = new ContatoBO();
        public frmCadContato()
        {
            InitializeComponent();
        }
        public frmCadContato(Int32 _intIdCodigo)
        {
            InitializeComponent();
            XElement contato = contatoBO.GetContato(_intIdCodigo);
            contatoDAO = new ContatoDAO(Convert.ToInt32(contato.Element("Codigo").Value), Convert.ToString(contato.Element("Nome").Value), Convert.ToDateTime(contato.Element("DataNascimento").Value), Convert.ToString(contato.Element("Endereco").Value), Convert.ToString(contato.Element("Cidade").Value), Convert.ToString(contato.Element("Cep").Value), Convert.ToString(contato.Element("Email").Value), Convert.ToString(contato.Element("Telefone").Value));
            txtNome.Text = contatoDAO.Nome;
            dtmDtaNascimento.Text = contatoDAO.DataNascimento.ToString();
            txtEndereco.Text = contatoDAO.Endereco;
            txtCidade.Text = contatoDAO.Cidade;
            txtEmail.Text = contatoDAO.Email;
            txtTelefone.Text = contatoDAO.Telefone;
            txtCEP.Text = contatoDAO.Cep;
            isEdit = true;
        }
        private void btnSalvar_Click(object sender, EventArgs e)
        {

            if (!isEdit)
            {
                contatoDAO = new ContatoDAO(txtNome.Text, Convert.ToDateTime(dtmDtaNascimento.Text), txtEndereco.Text, txtCidade.Text, txtCEP.Text, txtEmail.Text, txtTelefone.Text);
                contatoBO.Insert(contatoDAO);
                isEdit = true;
            }
            else
            {
                contatoDAO.Nome = txtNome.Text;
                contatoDAO.DataNascimento = Convert.ToDateTime(dtmDtaNascimento.Text);
                contatoDAO.Endereco = txtEndereco.Text;
                contatoDAO.Cidade = txtCidade.Text;
                contatoDAO.Cep = txtCEP.Text;
                contatoDAO.Email = txtEmail.Text;
                contatoDAO.Telefone = txtTelefone.Text;
                contatoBO.Update(contatoDAO);
            }
            MessageBox.Show("Registro salvo com sucesso", "Mensagem");
        }
    }
}
